package com.ytjj.qmyx.admin.dao;

import com.ytjj.qmyx.admin.model.OrdersInfoFreight;
import com.ytjj.qmyx.admin.model.request.*;
import com.ytjj.qmyx.admin.model.response.CustomerResponse;
import com.ytjj.qmyx.admin.model.response.OrdersInfoResponse;
import com.ytjj.qmyx.mall.model.OrdersInfo;
import com.ytjj.qmyx.mall.model.OrdersIntercept;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface CustomerDao {

    List<CustomerResponse> getCustomerOrderList(CustomerRequest customerRequest);

    int invalidOrderStatus(OrderStatusRequest orderStatusRequest);


    int validOrderStatus(OrderStatusRequest orderStatusRequest);

    int updateOrderInfoStatus(@Param("orderinfoStatus") String orderinfoStatus,
                              @Param("orderInfoId") Integer orderInfoId);

    int addIntercept(OrdersIntercept ordersIntercept);

    OrdersInfo selectById(Integer id);

    int updateOrdersInfo(UpdateOrderRequest updateOrderRequest);

    int updateOrders(UpdateOrderRequest updateOrderRequest);

    List<CustomerNewResponse> getNewCustomerOrderList(CustomerNewRequest request);

    boolean updateIsExport(CustomerNewResponse customerNewResponse);

    String selectOrderInfoIdByResOrderNo(String resOrderNo);

    List<OrdersInfoFreight> selectFreightByChildOrderNoList(@Param("childOrderNoList") List<String> childOrderNoList);

    /**
     * 根据子订单查询订单信息
     */
    OrdersInfoResponse getOrdersInfoByChildOrderNo(String childOrderNo);
}
